package com.dmai.capacity.platform.oauth.service;

import com.dmai.capacity.platform.common.dto.ResponseEntity;


public interface IValidateCodeService {
    /**
     * 保存图形验证码
     *
     * @param deviceId  前端唯一标识
     * @param imageCode 验证码
     */
    void saveImageCode(String deviceId, String imageCode);

    /**
     * 短信验证码
     *
     * @param mobile
     * @return
     */
    ResponseEntity sendSmsCode(String mobile);



    /**
     * 获取验证码
     *
     * @param deviceId 前端唯一标识/手机号
     */
    String getCode(String deviceId);

    /**
     * 删除验证码
     *
     * @param deviceId 前端唯一标识/手机号
     */
    void remove(String deviceId);

    /**
     * 验证验证码
     */
    void validate(String deviceId, String validCode);


    /**
     * 服务端国密字符串保存
     *
     * @param deviceId
     * @param publicKey
     * @param privateKey
     */
    ResponseEntity saveSmKey(String deviceId, String publicKey, String privateKey);


}
